Curso Académico:
2023/24
439 - Graduado en Ingeniería Informática
30230 - Procesadores de lenguajes
Información del Plan Docente
Año académico:
2023/24
Asignatura:
30230 - Procesadores de lenguajes
Centro académico:
110 - Escuela de Ingeniería y Arquitectura
Titulación:
439 - Graduado en Ingeniería Informática
Créditos:
6.0
Curso:
3
Periodo de impartición:
Segundo semestre
Clase de asignatura:
---
Materia:
---
1. Información básica de la asignatura
La asignatura se centrará en el estudio del funcionamiento interno de los procesadores de lenguajes. Se utilizarán los conocimientos adquiridos en materias previas relacionadas con los lenguajes y gramáticas para desarrollar un compilador de un lenguaje imperativo básico. El alumno terminará construyendo un traductor que abarque el análisis léxico, sintáctico y semántico del lenguaje, así como la generación de código correspondiente para su posterior ejecución. Las técnicas y herramientas estudiadas son aplicables a otros dominios de aplicación, como la transformación de datos especificados mediante un lenguaje formal, la visualización de páginas web (html) o de modelos de realidad virtual (vrml), o el procesamiento de lenguaje natural, por ejemplo.
El desarrollo de la asignatura se alinea con algunos de los Objetivos de Desarrollo Sostenible (ODS) de la Agenda 2030
(ODS), principalmente con el Objetivo 8 y la Meta 8.4.
2. Resultados de aprendizaje
El estudiante, tras superar esta asignatura:
- Comprenderá el funcionamiento interno de los compiladores y será capaz de utilizarlos de manera eficaz.
- Será capaz de aplicar los conocimientos adquiridos sobre lenguajes, gramáticas y autómatas para la especificación e implementación de los aspectos del análisis léxico y sintáctico de un traductor.
- Conocerá los métodos y técnicas relacionados con la generación y optimización de código.
- Dominará el uso de herramientas específicas para la construcción de traductores.
3. Programa de la asignatura
Las actividades de aprendizaje presenciales en el aula se centrarán en el estudio de los siguientes temas:
- Tema 1: Introducción. Traducción y procesamiento de lenguajes.
- Tema 2: Análisis léxico. Autómatas y expresiones regulares. Implementación de un analizador léxico.
- Tema 3: Análisis sintáctico. Gramáticas libres de contexto. Implementación de un analizador
sintáctico.
- Tema 4: Análisis semántico. Tabla de símbolos. Implementación de un analizador semántico.
- Tema 5: Entornos de ejecución.
- Tema 6: Generación y optimización de código.
Se realizarán sesiones de laboratorio cuyo objetivo final es el desarrollo de un compilador básico, pero completo, para un lenguaje imperativo.
4. Actividades académicas
El calendario de la asignatura será definido por el centro en el calendario académico del curso correspondiente. Las actividades académicas se organización de acuerdo a la siguiente distribución de actividades:
- Clases magistrales: 30 horas
- Clases de prácticas: 24 horas
- Actividad de evaluación teórico/práctica: 3 horas
- Actividad de evaluación práctica: 3 horas
- Trabajo del estudiante: 90 horas (aprox.)
El calendario detallado de actividades se establecerá a partir del aprobado por la Universidad para el curso académico
correspondiente. Las fechas de exámenes y de entrega de trabajos se anunciarán con suficiente antelación durante lel desarrollo del curso.
5. Sistema de evaluación
Las siguientes actividades de evaluación serán las siguientes:
- Evaluación continua (primera convocatoria): Se basará en la entrega de las prácticas y el desarrollo de una prueba teórico-práctica. Es obligatorio presentar cada práctica en las fechas establecida. En la prueba teórico-práctica habrá que resolver un conjunto de problemas planteados sobre el compilador desarrollado en las sesiones de laboratorio.
- Evaluación global (primera y segunda convocatorias): Se basará en la entrega de un compilador desarrollado
según las pautas del guión que se proporcionará al estudiante y una defensa del trabajo ante los profesores, así como una prueba teórico-práctica, esta de características análogas a la planteada para la evaluación continua.
En la calificación final el peso de la parte correspondiente a las prácticas de laboratorio será del 60%, mientras que el
correspondiente a la prueba teórico-práctica será del 40%. Para superar la asignatura es necesario obtener un mínimo de 5
puntos sobre 10 en la evaluación de las prácticas y un mínimo de 4 puntos sobre 10 en la evaluación de la prueba
teórico-práctica. En caso de no alcanzar el mínimo establecido en alguna de las partes, la calificación final será el mínimo
entre 4 y la media ponderada de las dos partes consideradas.